package com.wondertek.poms.service.vo;

import com.wondertek.poms.common.utils.validate.GroupType;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.groups.Default;

/**
 * <p><b>PcProductRuleVo Description:</b> PcProductRuleVo类  对应 pc_product_rule-二级产品规则  表</p>
 * @author 窦再兴
 * <p><b>DATE</b> 2020-10-16 15:56:14</p>
 */
 @Data
public class PcProductRuleVo {

	/**
	 * <b>Fields</b> id : id
	 */
	@NotNull(message = "id不能为空", groups = {GroupType.Update.class})
	private Long id;

	/**
	 * <b>Fields</b> productInfoPackageId : 二级产品ID
	 */
	@NotNull(message = "二级产品ID不能为空", groups = {Default.class})
	private Long productInfoPackageId;
	
	/**
	 * <b>Fields</b> ruleType : 规则类型 1.已选 2.限制
	 */
	@NotBlank(message = "规则类型 1.已选 2.限制不能为空", groups = {Default.class})
	@Length(message = "规则类型 1.已选 2.限制长度不能超过128个字节", max=128, groups = {Default.class, GroupType.Update.class})
	private String ruleType;
	
	/**
	 * <b>Fields</b> copyrightCpid : 版权所属CP
	 */
	@Length(message = "版权所属CP长度不能超过128个字节", max=128, groups = {Default.class, GroupType.Update.class})
	private String copyrightCpid;
	
	/**
	 * <b>Fields</b> copyrightScope : 版权授权范围 1.品牌2.全业务3.咪咕
	 */
	@Length(message = "版权授权范围 1.品牌2.全业务3.咪咕长度不能超过128个字节", max=128, groups = {Default.class, GroupType.Update.class})
	private String copyrightScope;
	
	/**
	 * <b>Fields</b> terminal : 版权终端 1.全平台2.手机终端3.PC4.IPTV5.平板6.数字有线网7.互联网电视
	 */
	@Length(message = "版权终端 1.全平台2.手机终端3.PC4.IPTV5.平板6.数字有线网7.互联网电视长度不能超过128个字节", max=128, groups = {Default.class, GroupType.Update.class})
	private String terminal;
	
	/**
	 * <b>Fields</b> area : 版权地域范围
	 */
	@Length(message = "版权地域范围长度不能超过128个字节", max=128, groups = {Default.class, GroupType.Update.class})
	private String area;
	
	/**
	 * <b>Fields</b> authorizationWay : 授权方式 1.单片授权2.集体授权3.频道授权4.三方SDK播放授权
	 */
	@Length(message = "授权方式 1.单片授权2.集体授权3.频道授权4.三方SDK播放授权长度不能超过128个字节", max=128, groups = {Default.class, GroupType.Update.class})
	private String authorizationWay;
	
	/**
	 * <b>Fields</b> copyrightType : 版权类型 1.全部2.强版权 3.弱版权
	 */
	@Length(message = "版权类型 1.全部2.强版权 3.弱版权长度不能超过128个字节", max=128, groups = {Default.class, GroupType.Update.class})
	private String copyrightType;
	
	/**
	 * <b>Fields</b> digitalCopyrightProtection : 数字版权保护 1.全部 2.是 3.否
	 */
	@Length(message = "数字版权保护 1.全部 2.是 3.否长度不能超过128个字节", max=128, groups = {Default.class, GroupType.Update.class})
	private String digitalCopyrightProtection;
}